| PIZZA |
Current compiler version:
0.39d
|
| A substantial companion
to Java |
| Pizzadoc vs. javadoc |
Pizzadoc is a superset of javadoc, and includes all of the features of
javadoc. This document describes how pizzadoc extends javadoc.
Accepts Pizza syntax
The most important new feature in pizzadoc is that all source code
understood by the Pizza compiler can be understood by pizzadoc.
To document the new features of Pizza, pizzadoc has some new tag
options.
- describing class parameters (parametric polymorphism)
In pizzadoc the @param-tag can also be used in class
documentations of parameterized classes (in javadoc the
@param-tag makes sense in method documentation only).
- describing higher order functions
Since higher order functions are "only" methods giving back a special data type
(a function) we have the documentation as usual in the @return tag
and the data types of the function are split to several cross links.
- describing algebraic data types
Algebraic data types do "only" have special constructors in a case clause.
The documentation is stored in an special comment heading the case
declaration. A new tag is not needed. Case constructors are listed as
normal constructors for the class.
New features affecting the functionality
Pizzadoc generates the documentation pages in the same style, as
javadoc does; however there are some features added in pizzadoc:
- generating pure interface pages (can be switched off)
- adding the source filenames to the pages (very important as pizza
allows you to store more than one public class in a source file) (can be switched off)
- parameterize the shown classes and fields thru modifier grouping
(javadoc is only said to manage it...) (use -private, -package,
etc. switches)
- generating an all packages index page
- generating a correct package index page, even when classes don't
belong to a package
- just update the all packages and package index pages instead of
kicking earlier generated information out of it (can be switched off)
The last listed point may become the most important to you! You don't
have to generate the documentation for all classes, if only one
class changed -- pizzadoc simply adds the new pages to your old index
files so you don't have to do such things by hand any longer.
Distributed documentation pages
Furthermore pizzadoc manages distributed documentation pages. The
documentation of packages can be stored in different locations of the
internet and pizzadoc automatically fills in the right links. It uses
a file where the user can list package prefixes and their address in
the internet. Whenever pizzadoc generates a link to a class of a
package with a prefix in that file, it will add the other address
information to the URL.
Page design: Enno
Runne; maintenance: John Maraist.
Java is a trademark of Sun
Microsystems.
Comments and bug reports to the Pizza Group, pizza@cis.unisa.edu.au.
All software and documents on the Pizza site are © Copyright
1996, 1997 by the respective authors (as attributed on each; terms for
redistribution are available).